# 标准内置对象—Date

# 创建

var now = new Date();

# 方法

  • getTime()获取时间戳的毫秒值。返回的是1970.1.1零点至今的毫秒数

    使用毫秒数处理缓存的效果(没有缓存)http://www.baidu.com?毫秒数

  • toLocaleString():返回当前date对象对应的时间本地字符串格式。不调用默认为英文格式

  • 获取当前的getFullYear()

  • 获取当前的(0~11):getMonth()+1

  • 获取一个月中的某一(1~31):getDate()

  • 获取一中的某一天(0~6):.getDay(),周日为0

  • 获取当前的小(0~23):getHours()

  • 获取当前的钟(0~59):getMinutes()

  • 获取当前的(0~59):getSecondes()

var now = new Date();
console.log(now); // Sun Mar 08 2020 01:32:22 GMT+0800 (中国标准时间)
console.log(now.toDateString()); // Sun Mar 08 2020
console.log(now.toTimeString()); // 01:33:40 GMT+0800 (中国标准时间)
console.log(now.toLocaleString()); // 2020/3/8 上午1:34:52
console.log(now.toLocaleDateString()); // 2020/3/8
console.log(now.toLocaleTimeString()); // 上午1:34:52
console.log(now.getTime()); // 1583602691147

console.log(now.getTimezoneOffset()); // -480,获取本地计算机上的时间与通用协调时间(UTC)之间的分钟差。
console.log(now.toUTCString()); // Sat, 07 Mar 2020 17:34:24 GMT
console.log(now.toISOString()); // 2020-03-07T17:33:55.955Z
console.log(now.toJSON()); // 2020-03-07T17:32:59.121Z

# 常用操作

# 获取指定格式 DateTime

pattern 为 yyyy-MM-dd HH:mm:ss

getDateTime() {
  var date = new Date();
  var year = date.getFullYear();
  var month = date.getMonth() + 1;
  month = month < 10 ? "0" + month : month;
  var day = date.getDate();
  day = day < 10 ? "0" + day : day;
  var hour = date.getHours();
  hour = hour < 10 ? "0" + hour : hour;
  var minute = date.getMinutes();
  minute = minute < 10 ? "0" + minute : minute;
  var second = date.getSeconds();
  second = second < 10 ? "0" + second : second;
  return year + "-" + month + "-" + day + " " + hour + ":" + minute + ":" + second;
}

# 将秒格式化

可用于倒计时

formatSeconds(totalSecond) {
  let second = totalSecond % 60;
  let minute = totalSecond / 60 % 60;
  let hour = totalSecond / 60 / 60;
  let result = parseInt(second) + "秒";
  result = minute > 0 ? parseInt(minute) + "分" + result : result;
  result = hour > 0 ? parseInt(hour) + "小时" + result : result;
  return result;
}